package cn.qiyu5522.tk_ems.entity.dto;

import cn.qiyu5522.tk_ems.entity.ResumeDeliveryRecord;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

/**
 * @ProjectName: tk_ems
 * @Package: cn.qiyu5522.tk_ems.entity.dto
 * @ClassName: ResumeDeliveryRecordDTO
 * @Author: [Toneky]
 * @Date: 2023/3/1 12:32
 * @Version: V1.0
 **/
@Data
@ApiModel("简历投递DTO")
public class ResumeDeliveryRecordDTO {

    @ApiModelProperty(value = "编号")
    @NotNull(message = "状态编号不能为空",groups = {ResumeDeliveryRecord.Update.class})
    private Integer id;

    @ApiModelProperty(value = "loginId")
    private Long loginId;

    @ApiModelProperty(value = "岗位ID")
    @NotNull(message = "岗位ID不能为空",groups = {ResumeDeliveryRecord.Update.class,ResumeDeliveryRecord.Insert.class})
    private Integer jobId;

    @ApiModelProperty(value = "简历ID")
    @NotNull(message = "简历ID不能为空",groups = {ResumeDeliveryRecord.Update.class,ResumeDeliveryRecord.Insert.class})
    private Integer resumeId;

    @ApiModelProperty(value = "学生ID")
    @NotNull(message = "学生ID不能为空",groups = {ResumeDeliveryRecord.Update.class,ResumeDeliveryRecord.Insert.class})
    private Long studentId;

    @ApiModelProperty(value = "公司ID")
    @NotNull(message = "公司ID不能为空",groups = {ResumeDeliveryRecord.Update.class,ResumeDeliveryRecord.Insert.class})
    private Long companyId;

    @ApiModelProperty(value = "起始投递时间")
    private LocalDateTime deliveryTimeStart;
    @ApiModelProperty(value = "截止投递时间")
    private LocalDateTime deliveryTimeEnd;

    @ApiModelProperty(value = "查看时间")
    private LocalDateTime viewTime;

    @ApiModelProperty(value = "状态，0表示未查看，1表示已查看")
    @NotNull(message = "公司ID不能为空",groups = {ResumeDeliveryRecord.Update.class,ResumeDeliveryRecord.Insert.class})
    @Max(value = 1,message = "最大值为1")
    @Min(value= 0,message = "最小值为0")
    private Integer state;
}
